Laser phase estimation and correction

ABSTRACT

In one general aspect, a non-transitory computer-readable storage medium can be configured to store instructions that when executed cause a processor to perform a process. The process can include producing a segment of a laser signal where the segment of the laser signal has a duration, and producing a first reference signal based on the laser signal. The process can include calculating a first phase deviation corresponding with a first portion of the duration based on the first reference signal, and producing a second reference signal based on the laser signal. The process can include calculating a second phase deviation corresponding with a second portion of the duration based on the second reference signal, and calculating a phase deviation of the segment of the laser signal based on a combination of the first phase deviation and the second phase deviation.

RELATED APPLICATION

This application claims priority to and the benefit of U.S. ProvisionalApplication No. 62/028,911, filed on Jul. 25, 2014, and entitled, “LASERPHASE ESTIMATION AND CORRECTION”, which is incorporated by referenceherein in its entirety.

TECHNICAL FIELD

This description relates to a multi-reference laser LIght Detection AndRanging (LIDAR) system.

BACKGROUND

In some known LIDAR systems, lasers may be used to estimate range andvelocity of moving objects. However, the range and velocity estimatescan be distorted by, for example, phase deviation, frequency deviation,and/or other interference. Thus, a need exists for systems, methods, andapparatus to address the shortfalls of present technology and to provideother new and innovative features.

SUMMARY

In one general aspect, a non-transitory computer-readable storage mediumcan be configured to store instructions that when executed cause aprocessor to perform a process. The process can include producing asegment of a laser signal where the segment of the laser signal has aduration, and producing a first reference signal based on the lasersignal. The process can include calculating a first phase deviationcorresponding with a first portion of the duration based on the firstreference signal, and producing a second reference signal based on thelaser signal. The process can include calculating a second phasedeviation corresponding with a second portion of the duration based onthe second reference signal, and calculating a phase deviation of thesegment of the laser signal based on a combination of the first phasedeviation and the second phase deviation.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram that illustrates a laser system.

FIG. 2 illustrates a target laser signal that is targeted for correctionfor a deviation.

FIG. 3 illustrates another example of the target laser signal shown inFIG. 2 that is targeted for correction of a deviation.

FIG. 4 illustrates another example of a shift in time segments of thetarget laser signal shown in FIG. 3.

FIG. 5 is a diagram that illustrates another example of a target lasersignal according to an implementation.

DETAILED DESCRIPTION

FIG. 1 is a diagram that illustrates a laser system 100 (also can bereferred to as a LIght Detection And Ranging (LIDAR) system) configuredto use a laser source 110 to produce or measure a range and/or avelocity of an object 5 that can be stationary or moving with respect tothe laser system 100. In some implementations, the object 5 can bereferred to as a target or as a target object 5. The laser system 100can be used in a frequency modulated continuous wave (FMCW) application.

The laser source 110 of the laser system 100 is configured to emit(e.g., produce, propagate) electromagnetic radiation at one or morefrequencies that can be, for example, a coherent light emission (e.g.,monochromatic light emission) or beam. For simplicity, the emissionsfrom the laser source 110 will be referred to as an electromagneticradiation emission (such as electromagnetic radiation emission), anemitted laser signal 10, or as an emitted light.

As shown in FIG. 1, the laser signal 10 can be split by the splitter 125into multiple laser signals such as at least laser signals 11-1, 11-2,12A, 12B, 13A, and 13B. The laser signals 12A, 12B, 13A, and 13B can beproduced by the splitter 125 for processing by reference systems 190A,190B, which each include an interferometer (which can include one ormore photodetectors or detectors (e.g., detector 150C) configured toconvert an optical signal into an electrical signal). In someimplementations, the laser signal 11 can be derived from a split lasersignal and can be referred to as combined laser signal. As shown in FIG.1, an interferometer can be used to produce the laser signal 11, whichmay be analyzed for one or more corrections by an analyzer 170 (whichcan also be referred to as a demodulator). In such implementations, thelaser signal 10 can be further split (e.g., by splitter 125) into lasersignal 11-1 and laser signal 11-2. The laser signal 11-1 can bereflected from an object 5 as laser signal 11-4. Laser signal 11-2 canbe delayed by a delay 142C (which can be correlated to a length) tolaser signal 11-3 and laser signal 11-3 can be combined with the lasersignal 11-4 via a combiner 140C. The laser signal 11 (also can bereferred to as an interferometer signal) from the interferometer can beused to gather information about the laser signal 11 using a detector150C. Discussions related to laser signal 11 below can be applied to anyof the component laser signals 11-1 through 11-4 that can be used todefine laser signal 11, which can be the target laser signal or thelaser signal targeted for analysis by the analyzer 170. The splitter 125is illustrated as a single component for simplicity. In someimplementations, the splitter 125 can include more than one splitter.Similarly one or more of the combiners shown in FIG. 1 may be combinedor may include additional combiners.

As shown in FIG. 1, the laser system 100 includes a frequency sweepmodule 120. The frequency sweep module 120 is configured to trigger thelaser source 110 to produce a variety of optical frequencies (also canbe referred to generally as frequencies), for example, by modulating adrive current of the laser source 110. Specifically, the frequency sweepmodule 120 is configured to trigger laser source 110 to produce apattern of optical frequencies (also can be referred to as a frequencypattern). For example, the frequency sweep module 120 can be configuredto trigger the laser source 110 to produce a sinusoidal wave pattern ofoptical frequencies, a sawtooth wave pattern of optical frequencies,and/or so forth. In some implementations, the sawtooth wave pattern canhave a portion continuously increasing (e.g., monotonically increasing,linearly increasing, increasing nonlinearly) in optical frequency (alsocan be referred to as up-chirp) and can have a portion continuouslydecreasing (e.g., monotonically decreasing, linearly decreasing,decreasing nonlinearly) in optical frequency (also can be referred to asdown-chirp). Accordingly, the frequency pattern can have a cycleincluding an up-chirp and a down-chirp.

The laser system 100 includes a combiner 140C configured to receive thelaser signal 11-4 reflected (also can be referred to as a reflectedlaser signal or as a scattered laser signal) (not shown) from the object5 in response to an emitted laser signal 11-1 (split from laser signal10) from the laser source 110 toward the object 5. In someimplementations, the reflected laser signal (also can be referred to asa return signal or return light) from the object 5 can be mixed with aportion of the emitted laser signal 10 (e.g., laser signal 11-3 delayedby delay 142C) and then analyzed by the analyzer 170 (after beingconverted to an electrical signal by detector 150C).

The analyzer 170 of the laser system 100 is configured to analyze acombination of emitted laser signal 11-1 from the laser source 110 andreflected laser signal 11-4 received by the combiner 140C. The emittedlaser signal 11-1 can be emitted in accordance with a pattern includingan up-chirp followed by a down-chirp (or a down-chirp followed by anup-chirp). The combination of a frequency of the emitted laser signal11-1 from the laser source 110 and a frequency of the reflected lasersignal 11-4 received by the combiner 140C can be analyzed by theanalyzer 170 to obtain or define a beat frequency or signal. In otherwords, the beat frequency can be a sum of a signal frequency change overthe round trip to the object 5 (emitted laser signal) and back(reflected laser signal), and may include a Doppler frequency shift ofthe reflected laser signal resulting from relative range motion betweenthe laser system 100 and the object 5. In some implementations, the beatsignal can have a relatively constant frequency or a varying frequency.In some implementations, a combination of a frequency of emitted lasersignal 11-1 and a frequency of reflected laser signal 11-4 can bereferred to as a difference frequency, a beat frequency or as around-trip frequency.

The analyzer 170 can be configured to calculate a round-trip timeperiod, which is a time period from the emission of the laser signal 10to receipt of the return of the reflected laser signal. A combination ofthe emitted later signal 11-1 and the reflected laser signal 11-4 cancollectively be referred to as a round-trip laser signal. The analyzer170 can also be configured to calculate a range and/or a velocity basedon the combination of the emitted laser signal 11-1 and the reflectedlaser signal 11-4.

The optical power of the laser output can change significantly during afrequency pattern such as a frequency sweep or up-chirp/down-chirp as aresult of, for example, drive current modulation of the laser source110. The frequency pattern may be non-ideal (e.g., may deviate) from aspecified frequency pattern because of an imperfect drive currentsignal, unavoidable thermal excitations in the laser source 110, and/orso forth that can cause variations, for example, frequency, phase,and/or so forth.

The laser system 100 includes reference systems 190A, 190B configured toproduce reference signals that can be used to correct for, for example,frequency deviations, phase deviations, etc. in one or more lasersignals produced by the laser source 110. In other words, the referencesystems 190A, 190B included in the laser system 100 can be configured tofacilitate compensation for deviations (e.g., non-linearities,non-idealities, errors) in a frequency pattern of, for example, theemitted laser signal 11-1, a reflected laser signal 11-4, a round-triplaser signal, and/or so forth, from the laser system 100. The referencesystems 190A, 190B can be used to achieve a near ideal, or ideal, FMCWLIDAR implementation. Specifically, the reference systems 190A, 190B canbe used to correct for deviations to obtain a relatively constant beatfrequency. Laser signals that are targeted for correction (e.g.,adjustment) by the reference systems 190A, 190B can be referred to astarget laser signals and can include at least the emitted laser signal10 (or a signal derived therefrom), a reflected laser signal (or asignal derived therefrom), and a round-trip laser signal (or a signalderived therefrom).

Each of the reference systems 190A, 190B is configured to define,respectively, a reference signal 14A, 14B that can be used to determine(e.g., identify, calculate) deviations in one or more target lasersignals (e.g., laser signal 11). The laser signal 10 can be split by thesplitter 125 into laser signal 12A, 12B for processing by the referencesystems 190A, 190B. The reference signal 14A can be produced based on acombination (using combiner 140A) of the laser signal 12A and a delayedlaser signal 13A′ produced based on the laser signal 13A. Similarly, thereference signal 14B can be produced based on a combination (usingcombiner 140B) of the laser signal 12B and a delayed laser signal 13B′produced based on the laser signal 13B. In other words, the referencesignals 14A, 14B can be beat signals produced respectively, by thecombination of the laser signal 12A and the delayed signal 13A′ and bythe combination of the laser signal 12B and the delayed signal 13B′. Thedelayed signals 13A′, 13B′ are produced through delays 142A, 142B,respectively. The delays 142A, 142B can each be referred to as a fixeddelay or reference arm lengths, and the reference signals 14A, 14B canbe referred to as reference arm signals. Each of the delays 142A, 142Bcan be configured to define a delay time period, and can be part of(e.g., included in) an interferometer.

The deviation detectors 150A, 150B can be configured to determinedeviations associated with the reference signals 14A, 14B, respectively.In some implementations, the deviation detectors 150A, 150B can becombined into a single module or divided into multiple modules. In someimplementations, one or more of the deviation detectors 150A, 150B canbe configured to detect a variety of deviations including phase shifts,and so forth. One or more of the deviation detectors 150A, 150B caninclude, or can be, a photodetector.

Because the analyzer 170 may not be configured to directly measuredeviations of the one or more target laser signals, the referencesystems 190A, 190B can be configured to measure deviations (e.g., usingthe deviation detectors 150A, 150B) of time segments of the referencesignals 14A, 14B that can correspond with time segments of the one ormore target laser signals (e.g., laser signal 11). In someimplementations, a time signal associated with a target laser signal canbe referred to as a target time segment. For example, the referencesystems 190A, 190B can be configured to measure laser phase time historyof time segments of the reference signals 14A, 14B that correspond withtime segments of one or more target laser signals. In general, the phasetime history of the Hilbert transform of the reference signals 14A, 14Bcan be used to correct the deviations of the phase time history of oneor more target laser signals so that the corrected target lasersignal(s) can be a desirable tone from which a desirable frequencydetermination may be made.

In this implementation, multiple reference systems—reference systems190A, 190B—are used to measure deviations of different time segments.Specifically, the delay 142A can be different from the delay 142B, sothat the reference signals 14A and 14B will be associated with differenttime segments (or delay time periods). Accordingly, deviationsassociated with each of the different time segments can be used in avariety of mathematical combinations to determine (e.g., calculate) in arelatively accurate fashion a deviation of yet another time segment ofone or more target signals. Examples of this concept are illustrated inFIGS. 2 and 3. The multiple reference system included in the lasersystem 100 has many advantages over a single reference signal processingsystem or method because a single reference signal processing systemmay, for example, make assumptions about phase history to estimate laserphase time history.

FIG. 2 illustrates a target laser signal that is targeted for correctionfor a deviation. For example, the target laser signal has time segment20 during a time duration between time T0 and time T10 that is targetedfor analysis. A first deviation can be determined (e.g., measured,calculated) with time segment 20A that occurs between time T0 and T7 forreference signal A and a second deviation can be determined for timesegment 20B that occurs between time T7 and T10 for reference signal B.Accordingly, the overall deviation of the time segment 20 associatedwith the target laser signal can be determined by combining (e.g.,summing, concatenating) the deviations associated with time segment 20Aand time segment 20B.

FIG. 3 illustrates another example of the target laser signal shown inFIG. 2 that is targeted for correction of a deviation. This example is avariation of the example illustrated in FIG. 2. In this implementation,the target laser signal has time segment 21 during a time durationbetween time T0 and time T4 that is targeted for analysis. A firstdeviation can be determined (e.g., measured, calculated) with timesegment 21A that occurs between time T0 and T7 for reference signal Aand a second deviation can be determined for time segment 21B thatoccurs between time T4 and T7 for reference signal B. Accordingly, theoverall deviation of the time segment 20 associated with the targetlaser signal can be determined by combining, which in this case issubtracting, the deviations associated with time segment 21A and timesegment 21B.

Referring back to FIG. 1, the time segments associated with thereference systems 190A, 190B can correspond with a sampling rate of theanalyzer 170. In some implementations, the time segments can correspondwith integer multiples (also can be referred to as integral numbers) ofsampling intervals or sampling time periods. For example, the samplingrate of the analyzer 170 can include a sampling time period of a fewnanoseconds. The delay 142A can be defined to correspond with an integermultiple of the sampling time period (e.g., 5 integer multiples×5 nssampling time period=25 ns delay) such that a deviation associated withthe reference signal 14A can be associated with a time segment thatcorresponds with the integer multiple of the sampling time period. Bydoing so the deviations associated with time segments of the referencesignals 14A, 14B can be matched to time segments of sampling timeperiods associated with one or more target signals. Accordingly, thedeviation of a time segment of a target laser signal can be accuratelydetermined.

An example of sampling time periods is illustrated in at least, forexample, FIG. 2. As shown in FIG. 2, the time period between time T0 andT1 can correspond with a sampling time period. Accordingly, the segment20 of the target laser signal can include ten sampling time periods.Also as shown in FIG. 2, the segment 20A includes seven sampling timeperiods RA1 through RA7, and the segment 20B includes seven samplingtime periods RB1 through RB3. Thus, the segment 20A of the referencesignal A can be matched with the sampling time periods from time T0through time T7 of the segment 20 of the target laser signal, and thesegment 20B of the reference signal B can be matched with the remainingsampling time periods from time T7 through time T10 of the segment 20 oftarget laser signal. Accordingly, a deviation of the time segment 20 ofthe target laser signal can be accurately determined based on thedeviations of the segment 20A, 20B because of the segment durationcorrespondence or matching.

Referring back to FIG. 1, the delays associated with the referencesystems 190A, 190B can have a difference based on one or more samplingtime periods. Specifically, the delay 142A and the delay 142B can beseparated by an integer multiple of a sampling time period (e.g.,sampling interval). For example, as shown in FIG. 2, the segment 20A canbe different from the segment 20B by four sampling time periods.

In some implementations, one or more of the delays 142A, 142B can have adelay time period that is a prime number of sampling time periods. Insome implementations, the delays 142A, 142B can be defined with delaytime periods that do not have a common factor.

In some implementations, with a non-zero deviation (e.g., phasemeasurement deviation), the longer of delay time periods of the tworeference systems 190A, 190B may a have delay based on the ratio (range(distance)−LO (length))/(long reference arm length). The range is theround trip delay to the object 5, and the LO length is a lengthcorrelated to the delay 142C. The (range−LO) term can represent a lengthdifference associated with an interferometer signal derived from thelaser signal 10. In other words, the range term can be a lengthassociated with the laser signal 10 that may include the distance to atarget (e.g., object 5), and may be a round-trip distance, and the LOterm can be a length associated with a delayed version of the lasersignal 10. Accordingly, the (range−LO) can represent a length derivedfrom a beating of the laser signal 10 and a delayed version of the lasersignal 10. In some implementations, the ratio can be, or should be, lessthan 10. The two references can be used to effectively concatenate, forexample, deviation difference (e.g., phase difference) measurements forrelatively short time periods to obtain phase difference estimates forrelatively long time periods. In some implementations, fewer short timemeasurements concatenated together may be desirable for an accurate longrange measurement.

Also, in some implementations, the shorter of the delay time periodsassociated with the two reference systems 190A, 190B may be short enoughthat a relatively short time delay period deviation may be estimatedaccurately, and a relatively small number of measurements may be used toestimate the deviation of a given (range−LO) length. Of the referencesystems 190A, 190B with the shorter delay (or length), the shorter delay(e.g., delay 142A, delay 142B) may be large enough that the root meansquare (RMS) phase measurement error (e.g., error due to noise) of, forexample, laser signal 14B is small compared to the measured RMS phasedeviation due to imperfections in the laser source 110.

In some implementations, the deviation detectors 150A, 150B can beconfigured to determine (e.g., calculate, measure) deviations for timesegments that correspond with the sampling time periods. In other words,deviations can be measured for time segments starting at more than onesampling time period. Accordingly, deviations can be measured for timesegments of a target laser signal having a variety of durations andstarting at different times (e.g., sampling times).

In some implementations, deviations for a segment of a target lasersignal can be determined based on deviations associated with multiplesegments (e.g., concatenated segments, overlapping segments) measuredusing a single reference system. For example, a deviation detector canbe configured to measure a first deviation associated with a first timesegment starting at a first time using a reference system having adelay. The deviation detector can be configured to measure a seconddeviation associated with a second time segment starting at a secondtime, different from the first time period, using the same referencesystem having the same delay. In some implementations, the first timesegment can be mutually exclusive with the second time segment. In someimplementations, the first time segment can have overlap with the secondtime segment. The overlap in the segments can occur, in particular, whenmeasuring a residual deviation. Residual deviations are discussed inmore detail in connection with, for example, at least FIG. 5.

FIG. 4 illustrates another example of a shift in time segments of thetarget laser signal shown in FIG. 3. As shown in FIG. 4, the timesegment 22A is shifted by one sample time period from the time segment21A shown in FIG. 3. Similarly, the time segment 22B is shifted by onesample time period from the time segment 21B shown in FIG. 3B.Accordingly, deviations associated with time segment 22A and 22B can beused to determine a deviation associated with time segment 22, which isshifted by one sampling time period from time segment 21 shown in FIG.3. Additional time segments associated with reference signal A orassociated reference signal B are not shown in FIG. 4.

Referring back to FIG. 1, in some implementations, an overall deviationassociated with a time segment of a target laser signal can bedetermined based on a deviation detected using only one of the referencesystems 190A, 190B. For example, two or more deviations associated withtwo or more time segments associated with the reference signal 14A ofthe reference system 190A can be used in combination to determine anoverall deviation associated with a time segment of the target lasersignal.

In some implementations, time segments associated with the referencesystems 190A, 190B may not be matched in a desirable fashion with a timesegment of a target laser system. In such instances, a residualdeviation calculator 180 included in the laser system 100 shown in FIG.1 can be configured to calculate, using a variety of methods (e.g., anaverage, a truncated portion), a residual deviation based on one or moreof the time segments associated with the reference systems 190A, 190B.Such an example is illustrated in FIG. 5.

FIG. 5 is a diagram that illustrates another example of a target lasersignal according to an implementation. As shown in FIG. 5, the targetlaser signal has a target time segment 52 between times S1 and S12. Adeviation associated with a time segment 52A of a reference signal A canbe used to determine a deviation associated with a first portion of thetarget time segment 52 between times S1 and S8, and a deviationassociated with a time segment 52B1 of a reference signal B can be usedto determine a second portion of the target time segment 52 betweentimes S8 and S11. The combination of the time segment 52A and the timesegment 52B1 leaves a remainder (or residual portion) in the target timesegment 52 between S11 and S12. In this implementation, a deviationassociated with a time segment 52B2 of the reference signal B can beused to determine a deviation associated with the residual portion ofthe target time segment 52 between times S11 and S12. The deviationassociated with the residual portion of the target time segment 52 canbe referred to as a residual deviation. In some implementations, afraction (or portion) of the deviation or a per sample time average of adeviation associated with the time segment 52B2 can be used to estimatethe deviation (or residual deviation) associated with the residualportion of the target time segment 52 between times S11 and S12. In someimplementations, a segment used to calculate (or estimate) the residualdeviation associated with the residual portion of the target timesegment 52 can be centered about the times S11 and S12. For example, adeviation (or a portion thereof) associated with a time segment betweentimes S10 and S13 of reference signal B can be used to estimate theresidual deviation associated with the residual portion of the targettime segment 52 can be centered about the times S11 and S12 In someimplementations, the deviation can be calculated using a residualdeviation calculator such as the residual deviation calculator 180 shownin FIG. 1.

Using properly constructed reference arms (e.g., reference systems 190A,190B shown in FIG. 1), within reference arm phase measurement deviation,the (range−LO) delay phase time history may be estimated accurately(e.g., perfectly), to the nearest sample length. The deviation insubsample phase estimation will, in general, be relatively small becauseone sample period is small compared with 1/(laser line width) and laserchanges within that period should be small.

Below is an example of (range−LO) phase time history estimation

Assume

Ref15 has a 15 sample delay

Ref7 has a 7 sample delay

Then, with the right integer delay the Ref15 phase time series may beadded to the Ref7 phase time series to synthesize a Ref22 time series.If measuring a target at a range for which the (range−LO) delay time wasnear 22 sample periods, the synthetic Ref22 conjugated and beat againstthe target return signal would yield a nearly perfect tone for spectrumprocessing.

Particulars of the implementation are set forth below:

Laser phase signal: phi(t)phi(t)=phi0+w0*t+alpha*t^2+V(t)  (1),

where t is time, phi0 is the phase at time 0, w0 is the opticalfrequency at time 0, alpha is a constant defining the chirp rate, andV(t) represents the deviation, or non linearity, of the laser frequencysweep

The reference arm phase signal is given by

$\begin{matrix}\begin{matrix}{{R\left( {t,{tau}} \right)} = {{{phi}(t)} - {{phi}\left( {t - {tau}} \right)}}} \\{= {{w\; 0*{tau}} + {\left( {2*{alpha}*{tau}} \right)*t} - {{alpha}*{tau}^{\bigwedge}2} +}} \\{{v(t)} - {v\left( {t - {tau}} \right)}} \\{= {\left\lbrack {{w\; 0*{tau}} - {{alpha}*{tau}^{\bigwedge}2}} \right\rbrack + {\left\lbrack {2*{alpha}} \right\rbrack*{tau}*t} +}} \\{{{v(t)} - {v\left( {t - {tau}} \right)}},}\end{matrix} & (2)\end{matrix}$

where tau is the time difference between the two lengths, or the delay,in the interfermoter.

The following is defined:K(tau)=[w0*tau−alphetau^2]=constant phase term2*alpha=2*pi*(chirp rate)=2*pi*hzpm*c=H,

where hzpm is the hertz per meter of path imbalance, and c is the speedof light in the propagation mediumchirp rate(hz/sec)=hzps=hzpm*cR(t,tau)=K(tau)+H*tau*t+v(t)−v(t−tau)  (3)

Now consider a discrete time sequence:t(j)=tSamp*j,where tSamp is the sample time.

Also consider a reference arm cut to obtain discrete travel time lengthtSamp*k

$\begin{matrix}\begin{matrix}{{R\left( {j,k} \right)} = {R\left( {{j*{tSamp}},{k*{tsamp}}} \right)}} \\{= {{K\left( {{tau}*{tSamp}} \right)} + {H*k*{tSamp}^{\bigwedge}2*j} + {v(j)} - {v\left( {j - k} \right)}}}\end{matrix} & (4)\end{matrix}$

If we complex heterodyne to baseband, ignoring constants, we have:R0(j,k)=v(j)−v(j−k)  (5)

Suppose we have two actual references corresponding to delay indices kand m. Then

$\begin{matrix}\begin{matrix}{{{R\; 0\left( {j,k} \right)} + {R\; 0\left( {{j - k},m} \right)}} = {{v(j)} - {v\left( {j - k} \right)} + {v\left( {j - k} \right)} - {v\left( {j - k - m} \right)}}} \\{= {{{v(j)} - {v\left( {j - \left( {k + m} \right)} \right)}} = {R\; 0\left( {j,{k + m}} \right)}}}\end{matrix} & (6)\end{matrix}$

We have exactly synthesized R0(j,k+m) using R0(j,k) and R0(j,m)

Similarly,

$\begin{matrix}\begin{matrix}{{{R\; 0\left( {j,k} \right)} - {R\; 0\left( {{j - k + m},m} \right)}} = {{v(j)} - {v\left( {j - k} \right)} - {v\left( {j - \left( {k - m} \right)} \right)} +}} \\{v\left( {j - \left( {k - m} \right) - m} \right)} \\{= {{{v(j)} - {v\left( {j - \left( {k - m} \right)} \right)}} = {R\;\left( {j,{k - m}} \right)}}}\end{matrix} & (7)\end{matrix}$

Theorem:

Given a third integer n, for any two non zero integers k and m that arerelatively prime (contain no common factors), there exist integerfactors A and B such thatn=A*k+B*m  (8)

As a result, generalizing, we can synthesize a reference arm signal ofarbitrary integer sample length from two integer sample length referencearms whose integers are relatively prime. The only deviation may bemeasurement noise.

Approximate reference segment estimation—Because measurement noisecannot be neglected, it may sometimes make sense to approximate somereference length segment components rather than using exactimplementations involving large factor integers A and/or B. For example,a reference length segment of 13 samples may be approximated using a 15sample reference arm and selecting sample indices so that the 13 samplesare centered in the 15 samples. The 13 sample phase difference isestimated as (13/15) times the 15 sample measured phase difference.Similarly, a 17 sample reference segment phase difference may beestimated as (17/15) times the phase difference of a measured 15 samplereference with the same center sample segment.

It can be shown that for a reference pair of lengths k and m, themaximum number of segments (sum of abs(A) and abs(b) in equation (8)),required to exactly synthesize an integer sample reference of lengthless than k*m ismaxSegments=[(k−1)+(m−1)],  (9)

which is a larger number than desirable. By allowing the option ofsegment lengths [(k−2),k,(k+2),(m−2),m,(m+2)] the maximum number ofreference segment phase measurements is greatly reduced. For example, inorder to synthesize any integer sample reference of length 1 to 100samples, using segments of length [5,7,9,13,15,17], the maximum numberis 7. For 1 to 50 samples, the maximum number is 4. In practice, we willhave modeled and empirical reference phase measurement deviation andapproximate length measurement deviation estimates and select exact andapproximate segments accordingly to minimize deviation. In allcircumstances minimum deviation will be better than that obtained byknown HS processing.

If a system is to be used to regularly measure long range, longerreference arms and LO's are in order.

This seemingly complex synthetic reference arm estimation process isactually fairly simple to implement and yields a significant performanceadvantage over existing HS processing implementations. In addition toconsistent SNR improvement, there should be a reduction in up chirp anddown chirp differences for velocity and range estimates.

Below are the results for an example 1 to 100 sample length reference.In this compilation no preference is given for exact segments overapproximate segments. This will be added once good estimates areavailable for deviations for exact segments and approximate segments.

-   -   ****twoRefsModel****    -   nSegRef1=15 nSegRef2=7    -   sigmaP=0.025 sigmaM=0.050    -   nSegRange=1    -   1=−6*15+13*7 totSegs=19 ErrMeas=0.218    -   1=1*15+−2*7 totSegs=3 ErrMeas=0.087    -   nSegRange=2    -   2=−5*15+11*7 totSegs=16 ErrMeas=0.200    -   2=2*15+−4*7 totSegs=6 ErrMeas=0.122    -   2=−1*15+0*7+0*13+1*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=3    -   3=−4*15+9*7 totSegs=13 ErrMeas=0.180    -   3=3*15+−6*7 totSegs=9 ErrMeas=0.150    -   3=−1*15+0*7+0*13+0*17+2*9+0*5 GSegs=1 ASegs=2 totSegs=3    -   nSegRange=4    -   4=−3*15+7*7 totSegs=10 ErrMeas=0.158    -   4=4*15+−8*7 totSegs=12 ErrMeas=0.173    -   4=0*15+0*7+−1*13+1*17+0*9+0*5 GSegs=0 ASegs=2 totSegs=2    -   nSegRange=5    -   5=−2*15+5*7 totSegs=7 ErrMeas=0.132    -   5=5*15+−10*7 totSegs=15 ErrMeas=0.194    -   5=0*15+0*7+0*13+0*17+0*9+1*5 GSegs=0 ASegs=1 totSegs=1    -   nSegRange=6    -   6=−1*15+3*7 totSegs=4 ErrMeas=0.100    -   6=6*15+−12*7 totSegs=18 ErrMeas=0.212    -   6=0*15+−1*7+1*13+0*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=7    -   7=0*15+1*7 totSegs=1 ErrMeas=0.050    -   nSegRange=8    -   8=−6*15+14*7 totSegs=20 ErrMeas=0.224    -   8=1*15+−1*7 totSegs=2 ErrMeas=0.071    -   nSegRange=9    -   9=−5*15+12*7 totSegs=17 ErrMeas=0.206    -   9=2*15+−3*7 totSegs=5 ErrMeas=0.112    -   9=0*15+0*7+0*13+0*17+1*9+0*5 GSegs=0 ASegs=1 totSegs=1    -   nSegRange=10    -   10=−4*15+10*7 totSegs=14 ErrMeas=0.187    -   10=3*15+−5*7 totSegs=8 ErrMeas=0.141    -   10=0*15+−1*7+0*13+1*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=11    -   11=−3*15+8*7 totSegs=11 ErrMeas=0.166    -   11=4*15+−7*7 totSegs=11 ErrMeas=0.166    -   11=−1*15+0*7+0*13+1*17+1*9+0*5GSegs=1 ASegs=2 totSegs=3    -   nSegRange=12    -   12=−2*15+6*7 totSegs=8 ErrMeas=0.141    -   12=5*15+−9*7 totSegs=14 ErrMeas=0.187    -   12=0*15+0*7+0*13+1*17+0*9+−1*5 GSegs=0 ASegs=2 totSegs=2    -   nSegRange=13    -   13=−1*15+4*7 totSegs=5 ErrMeas=0.112    -   13=6*15+−11*7 totSegs=17 ErrMeas=0.206    -   13=0*15+0*7+1*13+0*17+0*9+0*5 GSegs=0 ASegs=1 totSegs=1    -   nSegRange=14    -   14=0*15+2*7 totSegs=2 ErrMeas=0.071    -   nSegRange=15    -   15=1*15+0*7 totSegs=1 ErrMeas=0.050    -   nSegRange=16    -   16=−5*15+13*7 totSegs=18 ErrMeas=0.212    -   16=2*15+−2*7 totSegs=4 ErrMeas=0.100    -   16=0*15+1*7+0*13+0*17+1*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=17    -   17=−4*15+11*7 totSegs=15 ErrMeas=0.194    -   17=3*15+−4*7 totSegs=7 ErrMeas=0.132    -   17=0*15+0*7+0*13+1*17+0*9+0*5 GSegs=0 ASegs=1 totSegs=1    -   nSegRange=18    -   18=−3*15+9*7 totSegs=12 ErrMeas=0.173    -   18=4*15+−6*7 totSegs=10 ErrMeas=0.158    -   18=0*15+0*7+0*13+0*17+2*9+0*5 GSegs=0 ASegs=2 totSegs=2    -   nSegRange=19    -   19=−2*15+7*7 totSegs=9 ErrMeas=0.150    -   19=5*15+−8*7 totSegs=13 ErrMeas=0.180    -   19=−1*15+0*7+0*13+2*17+0*9+0*5 GSegs=1 ASegs=2 totSegs=3    -   nSegRange=20    -   20=−1*15+5*7 totSegs=6 ErrMeas=0.122    -   20=6*15+−10*7 totSegs=16 ErrMeas=0.200    -   20=0*15+1*7+1*13+0*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=21    -   21=0*15+3*7 totSegs=3 ErrMeas=0.087    -   nSegRange=22    -   22=1*15+1*7 totSegs=2 ErrMeas=0.071    -   nSegRange=23    -   23=−5*15+14*7 totSegs=19 ErrMeas=0.218    -   23=2*15+−1*7 totSegs=3 ErrMeas=0.087    -   nSegRange=24    -   24=−4*15+12*7 totSegs=16 ErrMeas=0.200    -   24=3*15+−3*7 totSegs=6 ErrMeas=0.122    -   24=0*15+1*7+0*13+1*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=25    -   25=−3*15+10*7 totSegs=13 ErrMeas=0.180    -   25=4*15+−5*7 totSegs=9 ErrMeas=0.150    -   25=0*15+0*7+0*13+2*17+−1*9+0*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=26    -   26=−2*15+8*7 totSegs=10 ErrMeas=0.158    -   26=5*15+−7*7 totSegs=12 ErrMeas=0.173    -   26=0*15+0*7+0*13+1*17+1*9+0*5 GSegs=0 ASegs=2 totSegs=2    -   nSegRange=27    -   27=−1*15+6*7 totSegs=7 ErrMeas=0.132    -   27=6*15+−9*7 totSegs=15 ErrMeas=0.194    -   27=0*15+−1*7+0*13+2*17+0*9+0*5 GSegs=1 ASegs=2 totSegs=3    -   nSegRange=28    -   28=0*15+4*7 totSegs=4 ErrMeas=0.100    -   28=1*15+0*7+1*13+0*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=29    -   29=1*15+2*7 totSegs=3 ErrMeas=0.087    -   nSegRange=30    -   30=2*15+0*7 totSegs=2 ErrMeas=0.071    -   nSegRange=31    -   31=−4*15+13*7 totSegs=17 ErrMeas=0.206    -   31=3*15+−2*7 totSegs=5 ErrMeas=0.112    -   31=0*15+0*7+0*13+1*17+1*9+1*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=32    -   32=−3*15+11*7 totSegs=14 ErrMeas=0.187    -   32=4*15+−4*7 totSegs=8 ErrMeas=0.141    -   32=1*15+0*7+0*13+1*17+0*9+0*5 GSegs=1 ASegs=1 totSegs=2    -   nSegRange=33    -   33=−2*15+9*7 totSegs=11 ErrMeas=0.166    -   33=5*15+−6*7 totSegs=11 ErrMeas=0.166    -   33=0*15+1*7+0*13+1*17+1*9+0*5 GSegs=1 ASegs=2 totSegs=3    -   nSegRange=34    -   34=−1*15+7*7 totSegs=8 ErrMeas=0.141    -   34=6*15+−8*7 totSegs=14 ErrMeas=0.187    -   34=0*15+0*7+0*13+2*17+0*9+0*5 GSegs=0 ASegs=2 totSegs=2    -   nSegRange=35    -   35=0*15+5*7 totSegs=5 ErrMeas=0.112    -   35=0*15+0*7+0*13+1*17+2*9+0*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=36    -   36=1*15+3*7 totSegs=4 ErrMeas=0.100    -   nSegRange=37    -   37=2*15+1*7 totSegs=3 ErrMeas=0.087    -   nSegRange=38    -   38=−4*15+14*7 totSegs=18 ErrMeas=0.212    -   38=3*15+−1*7 totSegs=4 ErrMeas=0.100    -   nSegRange=39    -   39=−3*15+12*7 totSegs=15 ErrMeas=0.194    -   39=4*15+−3*7 totSegs=7 ErrMeas=0.132    -   39=0*15+0*7+0*13+2*17+0*9+1*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=40    -   40=−2*15+10*7 totSegs=12 ErrMeas=0.173    -   40=5*15+−5*7 totSegs=10 ErrMeas=0.158    -   40=0*15+−1*7+1*13+2*17+0*9+0*5 GSegs=1 ASegs=3 totSegs=4    -   nSegRange=41    -   41=−1*15+8*7 totSegs=9 ErrMeas=0.150    -   41=6*15+−7*7 totSegs=13 ErrMeas=0.180    -   41=0*15+1*7+0*13+2*17+0*9+0*5 GSegs=1 ASegs=2 totSegs=3    -   nSegRange=42    -   42=0*15+6*7 totSegs=6 ErrMeas=0.122    -   42=0*15+0*7+0*13+3*17+−1*9+0*5GSegs=0 ASegs=4 totSegs=4    -   nSegRange=43    -   43=1*15+4*7 totSegs=5 ErrMeas=0.112    -   43=0*15+0*7+0*13+2*17+1*9+0*5GSegs=0 ASegs=3 totSegs=3    -   nSegRange=44    -   44=2*15+2*7 totSegs=4 ErrMeas=0.100    -   nSegRange=45    -   45=3*15+0*7 totSegs=3 ErrMeas=0.087    -   nSegRange=46    -   46=−3*15+13*7 totSegs=16 ErrMeas=0.200    -   46=4*15+−2*7 totSegs=6 ErrMeas=0.122    -   46=0*15+0*7+0*13+3*17+0*9+−1*5 GSegs=0 ASegs=4 totSegs=4    -   nSegRange=47    -   47=−2*15+11*7 totSegs=13 ErrMeas=0.180    -   47=5*15+−4*7 totSegs=9 ErrMeas=0.150    -   47=0*15+0*7+1*13+2*17+0*9+0*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=48    -   48=−1*15+9*7 totSegs=10 ErrMeas=0.158    -   48=6*15+−6*7 totSegs=12 ErrMeas=0.173    -   48=0*15+0*7+0*13+2*17+1*9+1*5 GSegs=0 ASegs=4 totSegs=4    -   nSegRange=49    -   49=0*15+7*7 totSegs=7 ErrMeas=0.132    -   49=1*15+0*7+0*13+2*17+0*9+0*5GSegs=1 ASegs=2 totSegs=3    -   nSegRange=50    -   50=1*15+5*7 totSegs=6 ErrMeas=0.122    -   50=0*15+1*7+0*13+2*17+1*9+0*5 GSegs=1 ASegs=3 totSegs=4    -   nSegRange=51    -   51=2*15+3*7 totSegs=5 ErrMeas=0.112    -   51=0*15+0*7+0*13+3*17+0*9+0*5 GSegs=0 ASegs=3 totSegs=3    -   nSegRange=52    -   52=3*15+1*7 totSegs=4 ErrMeas=0.100    -   nSegRange=53    -   53=−3*15+14*7 totSegs=17 ErrMeas=0.206    -   53=4*15+−1*7 totSegs=5 ErrMeas=0.112    -   nSegRange=54    -   54=−2*15+12*7 totSegs=14 ErrMeas=0.187    -   54=5*15+−3*7 totSegs=8 ErrMeas=0.141    -   54=0*15+1*7+1*13+2*17+0*9+0*5GSegs=1 ASegs=3 totSegs=4    -   nSegRange=55    -   55=−1*15+10*7 totSegs=11 ErrMeas=0.166    -   55=6*15+−5*7 totSegs=11 ErrMeas=0.166    -   55=0*15+0*7+−1*13+4*17+0*9+0*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=56    -   56=0*15+8*7 totSegs=8 ErrMeas=0.141    -   56=0*15+0*7+0*13+3*17+0*9+1*5 GSegs=0 ASegs=4 totSegs=4    -   nSegRange=57    -   57=1*15+6*7 totSegs=7 ErrMeas=0.132    -   57=0*15+−1*7+1*13+3*17+0*9+0*5 GSegs=1 ASegs=4 totSegs=5    -   nSegRange=58    -   58=2*15+4*7 totSegs=6 ErrMeas=0.122    -   58=0*15+1*7+0*13+3*17+0*9+0*5 GSegs=1 ASegs=3 totSegs=4    -   nSegRange=59    -   59=3*15+2*7 totSegs=5 ErrMeas=0.112    -   nSegRange=60    -   60=4*15+0*7 totSegs=4 ErrMeas=0.100    -   nSegRange=61    -   61=−2*15+13*7 totSegs=15 ErrMeas=0.194    -   61=5*15+−2*7 totSegs=7 ErrMeas=0.132    -   61=0*15+−1*7+0*13+4*17+0*9+0*5 GSegs=1 ASegs=4 totSegs=5    -   nSegRange=62    -   62=−1*15+11*7 totSegs=12 ErrMeas=0.173    -   62=6*15+−4*7 totSegs=10 ErrMeas=0.158    -   62=1*15+0*7+1*13+2*17+0*9+0*5 GSegs=1 ASegs=3 totSegs=4    -   nSegRange=63    -   63=0*15+9*7 totSegs=9 ErrMeas=0.150    -   63=0*15+0*7+0*13+4*17+0*9+−1*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=64    -   64=1*15+7*7 totSegs=8 ErrMeas=0.141    -   64=0*15+0*7+1*13+3*17+0*9+0*5 GSegs=0 ASegs=4 totSegs=4    -   nSegRange=65    -   65=2*15+5*7 totSegs=7 ErrMeas=0.132    -   65=0*15+0*7+0*13+3*17+1*9+1*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=66    -   66=3*15+3*7 totSegs=6 ErrMeas=0.122    -   66=1*15+0*7+0*13+3*17+0*9+0*5 GSegs=1 ASegs=3 totSegs=4    -   nSegRange=67    -   67=4*15+1*7 totSegs=5 ErrMeas=0.112    -   nSegRange=68    -   68=−2*15+14*7 totSegs=16 ErrMeas=0.200    -   68=5*15+−1*7 totSegs=6 ErrMeas=0.122    -   68=0*15+0*7+0*13+4*17+0*9+0*5 GSegs=0 ASegs=4 totSegs=4    -   nSegRange=69    -   69=−1*15+12*7 totSegs=13 ErrMeas=0.180    -   69=6*15+−3*7 totSegs=9 ErrMeas=0.150    -   69=0*15+0*7+0*13+3*17+2*9+0*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=70    -   70=0*15+10*7 totSegs=10 ErrMeas=0.158    -   70=−1*15+0*7+0*13+5*17+0*9+0*5 GSegs=1 ASegs=5 totSegs=6    -   nSegRange=71    -   71=1*15+8*7 totSegs=9 ErrMeas=0.150    -   71=0*15+1*7+1*13+3*17+0*9+0*5 GSegs=1 ASegs=4 totSegs=5    -   nSegRange=72    -   72=2*15+6*7 totSegs=8 ErrMeas=0.141    -   72=0*15+0*7+−1*13+5*17+0*9+0*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=73    -   73=3*15+4*7 totSegs=7 ErrMeas=0.132    -   73=0*15+0*7+0*13+4*17+0*9+1*5GSegs=0 ASegs=5 totSegs=5    -   nSegRange=74    -   74=4*15+2*7 totSegs=6 ErrMeas=0.122    -   nSegRange=75    -   75=5*15+0*7 totSegs=5 ErrMeas=0.112    -   nSegRange=76    -   76=−1*15+13*7 totSegs=14 ErrMeas=0.187    -   76=6*15+−2*7 totSegs=8 ErrMeas=0.141    -   76=0*15+0*7+0*13+5*17+−1*9+0*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=77    -   77=0*15+11*7 totSegs=11 ErrMeas=0.166    -   77=0*15+0*7+0*13+4*17+1*9+0*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=78    -   78=1*15+9*7 totSegs=10 ErrMeas=0.158    -   78=0*15+−1*7+0*13+5*17+0*9+0*5GSegs=1 ASegs=5 totSegs=6    -   nSegRange=79    -   79=2*15+7*7 totSegs=9 ErrMeas=0.150    -   79=1*15+0*7+1*13+3*17+0*9+0*5 GSegs=1 ASegs=4 totSegs=5    -   nSegRange=80    -   80=3*15+5*7 totSegs=8 ErrMeas=0.141    -   80=0*15+0*7+0*13+5*17+0*9+−1*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=81    -   81=4*15+3*7 totSegs=7 ErrMeas=0.132    -   81=0*15+0*7+1*13+4*17+0*9+0*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=82    -   82=5*15+1*7 totSegs=6 ErrMeas=0.122    -   nSegRange=83    -   83=−1*15+14*7 totSegs=15 ErrMeas=0.194    -   83=6*15+−1*7 totSegs=7 ErrMeas=0.132    -   83=1*15+0*7+0*13+4*17+0*9+0*5 GSegs=1 ASegs=4 totSegs=5    -   nSegRange=84    -   84=0*15+12*7 totSegs=12 ErrMeas=0.173    -   84=0*15+1*7+0*13+4*17+1*9+0*5 GSegs=1 ASegs=5 totSegs=6    -   nSegRange=85    -   85=1*15+10*7 totSegs=11 ErrMeas=0.166    -   85=0*15+0*7+0*13+5*17+0*9+0*5 GSegs=0 ASegs=5 totSegs=5    -   nSegRange=86    -   86=2*15+8*7 totSegs=10 ErrMeas=0.158    -   86=0*15+0*7+0*13+4*17+2*9+0*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=87    -   87=3*15+6*7 totSegs=9 ErrMeas=0.150    -   87=−1*15+0*7+0*13+6*17+0*9+0*5 GSegs=1 ASegs=6 totSegs=7    -   nSegRange=88    -   88=4*15+4*7 totSegs=8 ErrMeas=0.141    -   88=0*15+1*7+1*13+4*17+0*9+0*5 GSegs=1 ASegs=5 totSegs=6    -   nSegRange=89    -   89=5*15+2*7 totSegs=7 ErrMeas=0.132    -   nSegRange=90    -   90=6*15+0*7 totSegs=6 ErrMeas=0.122    -   nSegRange=91    -   91=0*15+13*7 totSegs=13 ErrMeas=0.180    -   91=0*15+−1*7+1*13+5*17+0*9+0*5 GSegs=1 ASegs=6 totSegs=7    -   nSegRange=92    -   92=1*15+11*7 totSegs=12 ErrMeas=0.173    -   92=0*15+1*7+0*13+5*17+0*9+0*5 GSegs=1 ASegs=5 totSegs=6    -   nSegRange=93    -   93=2*15+9*7 totSegs=11 ErrMeas=0.166    -   93=0*15+0*7+0*13+6*17+−1*9+0*5 GSegs=0 ASegs=7 totSegs=7    -   nSegRange=94    -   94=3*15+7*7 totSegs=10 ErrMeas=0.158    -   94=0*15+0*7+0*13+5*17+1*9+0*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=95    -   95=4*15+5*7 totSegs=9 ErrMeas=0.150    -   95=0*15+−1*7+0*13+6*17+0*9+0*5 GSegs=1 ASegs=6 totSegs=7    -   nSegRange=96    -   96=5*15+3*7 totSegs=8 ErrMeas=0.141    -   96=1*15+0*7+1*13+4*17+0*9+0*5 GSegs=1 ASegs=5 totSegs=6    -   nSegRange=97    -   97=6*15+1*7 totSegs=7 ErrMeas=0.132    -   nSegRange=98    -   98=0*15+14*7 totSegs=14 ErrMeas=0.187    -   98=0*15+0*7+1*13+5*17+0*9+0*5 GSegs=0 ASegs=6 totSegs=6    -   nSegRange=99    -   99=1*15+12*7 totSegs=13 ErrMeas=0.180    -   99=0*15+0*7+0*13+5*17+1*9+1*5 GSegs=0 ASegs=7 totSegs=7    -   nSegRange=100    -   100=2*15+10*7 totSegs=12 ErrMeas=0.173    -   100=1*15+0*7+0*13+5*17+0*9+0*5 GSegs=1 ASegs=5 totSegs=6

In some implementations, one or more portions of the components shown inthe laser system 100 in FIG. 1 can be, or can include, a hardware-basedmodule (e.g., a digital signal processor (DSP), a field programmablegate array (FPGA), a memory), a firmware module, and/or a software-basedmodule (e.g., a module of computer code, a set of computer-readableinstructions that can be executed at a computer). For example, in someimplementations, one or more portions of the laser system 100 can be, orcan include, a software module configured for execution by at least oneprocessor (not shown). In some implementations, the functionality of thecomponents can be included in different modules and/or differentcomponents than those shown in FIG. 1.

In some embodiments, one or more of the components of the laser system100 can be, or can include, processors configured to processinstructions stored in a memory. For example, the analyzer 170 (and/or aportion thereof) can be a combination of a processor and a memoryconfigured to execute instructions related to a process to implement oneor more functions.

Although not shown, in some implementations, the components of the lasersystem 100 (or portions thereof) can be configured to operate within,for example, a data center (e.g., a cloud computing environment), acomputer system, one or more server/host devices, and/or so forth. Insome implementations, the components of the laser system 100 (orportions thereof) can be configured to operate within a network. Thus,the laser system 100 (or portions thereof) can be configured to functionwithin various types of network environments that can include one ormore devices and/or one or more server devices. For example, the networkcan be, or can include, a local area network (LAN), a wide area network(WAN), and/or so forth. The network can be, or can include, a wirelessnetwork and/or wireless network implemented using, for example, gatewaydevices, bridges, switches, and/or so forth. The network can include oneor more segments and/or can have portions based on various protocolssuch as Internet Protocol (IP) and/or a proprietary protocol. Thenetwork can include at least a portion of the Internet.

In some implementations, a memory can be any type of memory such as arandom-access memory, a disk drive memory, flash memory, and/or soforth. In some implementations, the memory can be implemented as morethan one memory component (e.g., more than one RAM component or diskdrive memory) associated with the components of the laser system 100.

Implementations of the various techniques described herein may beimplemented in digital electronic circuitry, or in computer hardware,firmware, software, or in combinations of them. Implementations mayimplemented as a computer program product, i.e., a computer programtangibly embodied in an information carrier, e.g., in a machine-readablestorage device (computer-readable medium, a non-transitorycomputer-readable storage medium, a tangible computer-readable storagemedium) or in a propagated signal, for processing by, or to control theoperation of, data processing apparatus, e.g., a programmable processor,a computer, or multiple computers. A computer program, such as thecomputer program(s) described above, can be written in any form ofprogramming language, including compiled or interpreted languages, andcan be deployed in any form, including as a stand-alone program or as amodule, component, subroutine, or other unit suitable for use in acomputing environment. A computer program can be deployed to beprocessed on one computer or on multiple computers at one site ordistributed across multiple sites and interconnected by a communicationnetwork.

Method steps may be performed by one or more programmable processorsexecuting a computer program to perform functions by operating on inputdata and generating output. Method steps also may be performed by, andan apparatus may be implemented as, special purpose logic circuitry,e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the processing of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. Elements of a computer may include atleast one processor for executing instructions and one or more memorydevices for storing instructions and data. Generally, a computer alsomay include, or be operatively coupled to receive data from or transferdata to, or both, one or more mass storage devices for storing data,e.g., magnetic, magneto-optical disks, or optical disks. Informationcarriers suitable for embodying computer program instructions and datainclude all forms of non-volatile memory, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor andthe memory may be supplemented by, or incorporated in special purposelogic circuitry.

To provide for interaction with a user, implementations may beimplemented on a computer having a display device, e.g., a liquidcrystal display (LCD) monitor, for displaying information to the userand a keyboard and a pointing device, e.g., a mouse or a trackball, bywhich the user can provide input to the computer. Other kinds of devicescan be used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input.

Implementations may be implemented in a computing system that includes aback-end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront-end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation, or any combination of such back-end, middleware, orfront-end components. Components may be interconnected by any form ormedium of digital data communication, e.g., a communication network.Examples of communication networks include a local area network (LAN)and a wide area network (WAN), e.g., the Internet.

While certain features of the described implementations have beenillustrated as described herein, many modifications, substitutions,changes and equivalents will now occur to those skilled in the art. Itis, therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the scope of theimplementations. It should be understood that they have been presentedby way of example only, not limitation, and various changes in form anddetails may be made. Any portion of the apparatus and/or methodsdescribed herein may be combined in any combination, except mutuallyexclusive combinations. The implementations described herein can includevarious combinations and/or sub-combinations of the functions,components and/or features of the different implementations described.

What is claimed is:
 1. A non-transitory computer-readable storage mediumstoring instructions that when executed cause a processor to perform aprocess, the process comprising: producing a segment of a laser signal,the segment of the laser signal having a duration; producing a firstreference signal based on the laser signal; calculating a first phasedeviation corresponding with a first portion of the duration based onthe first reference signal; producing a second reference signal based onthe laser signal; calculating a second phase deviation correspondingwith a second portion of the duration based on the second referencesignal; and calculating a phase deviation of the segment of the lasersignal based on a combination of the first phase deviation and thesecond phase deviation.
 2. The non-transitory computer-readable storagemedium of claim 1, wherein the duration corresponds with a round-triptime period of the laser signal to a target object.
 3. Thenon-transitory computer-readable storage medium of claim 1, wherein thefirst portion of the duration and the second portion of the durationoccur during mutually exclusive time periods.
 4. The non-transitorycomputer-readable storage medium of claim 1, wherein the combination isa sum.
 5. The non-transitory computer-readable storage medium of claim1, wherein the combination is a difference.
 6. A method, comprising:producing a laser signal; analyzing a reflected signal of the lasersignal based on a sampling time period; producing a first referencesignal based on the laser signal and a first delay duration, the firstdelay duration being an integer multiple of the sampling time period;calculating a phase deviation associated with the first delay durationbased on the first reference signal; and producing a second referencesignal based on the laser signal and a second delay duration differentfrom the first delay duration.
 7. The method of claim 6, wherein thephase deviation is a first phase deviation, the method furthercomprising: calculating a second phase deviation associated with thesecond delay duration based on the second reference signal; andcalculating a round-trip phase deviation of the laser signal using thefirst phase deviation and the second phase deviation.
 8. The method ofclaim 6, wherein the phase deviation is a first phase deviation, themethod further comprising: calculating a second phase deviationassociated with the second delay duration based on the second referencesignal; and calculating a phase deviation of the laser signal, the phasedeviation being associated with a round-trip duration equal to orgreater than a sum of the first delay duration and the second delayduration based on a summation of the first phase deviation and thesecond phase deviation.
 9. The method of claim 6, wherein the phasedeviation is a first phase deviation, the method further comprising:calculating a second phase deviation associated with the second delayduration based on the second reference signal; and calculating a phasedeviation of the laser signal, the phase deviation being associated witha round-trip duration less than a sum of the first delay duration andthe second delay duration based on a difference between the first phasedeviation and the second phase deviation.
 10. The method of claim 6,further comprising: determining a round-trip duration associated withthe laser signal based on a range to a target object; and estimating aresidual phase deviation of a portion of the laser signal correspondingwith a difference between and the round-trip duration and a sum of thefirst delay duration and the second delay duration.
 11. The method ofclaim 6, wherein the integer multiple of the sampling period is a firstinteger multiple of the sampling period, the second delay duration is asecond integer multiple of the sampling time period.
 12. The method ofclaim 11, wherein the first integer multiple and the second integermultiple do not have a common factor.
 13. The method of claim 11,wherein the first integer multiple is a prime number, the second integermultiple is a prime number.
 14. An apparatus, comprising: a laser sourceconfigured to produce a laser signal; a receiver configured to analyze,based on a sampling time period, a reflected signal from the lasersignal; a first reference module including a first delay and configuredto produce a first reference signal based on the laser signal; a phasedetector configured to detect a phase deviation associated with aduration produced by the first delay; a second reference moduleincluding a second delay and configured to produce a second referencesignal based on the laser signal; and a phase detector configured todetect a phase deviation associated with a duration produced by thesecond delay, the duration produced by the first delay being differentfrom the duration produced by the second delay by an integer multiple ofthe sampling time period.
 15. The apparatus of claim 14, wherein theduration of the first delay is an integer multiple of the samplingperiod.